// Span - Version 1.0
// このスクリプトは、span_layer変数に割り当てられたレイヤーを、
// １番目と２番目のポップアップメニューで選択されたレイヤー間で、伸縮／回転／移動します。

//      レイヤー            プロパティ                チャンネル
//      ------              ----------                --------
// 1: 伸縮元レイヤー		使用しない                使用しない
// 2: 伸縮先レイヤー		使用しない                使用しない
//
// span_layer: レイヤー１およびレイヤー２の間で伸縮するレイヤー

span_layer = "伸縮するレイヤーを入力";				// 伸縮するレイヤーの名前または番号に変更

l1 = pop_layer(1);
l2 = pop_layer(2);

// レイヤー1（l1）とレイヤー２（l2）の中間点に位置を割り当て
value(span_layer, position) = (value(l1, position) + value(l2, position)) / 2;

// レイヤー1（l1）とレイヤー２（l2）の間のベクトルを計算
delta = value(l1, position) - value(l2, position);

// ベクトルを角度に変換することによって、レイヤーの回転を計算
value(span_layer, rotation) = -rad_to_deg( atan2(delta[X], delta[Y]) ) + 90;

// span_layerで指定されたレイヤーのスケールを、その他の２つのレイヤー間の距離に割り当て
value(span_layer, scale)[X] = length(delta) / layer_size(span_layer)[X] * 100;
